-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ENH]: CIP - Authorization #1250
Conversation
Reviewer ChecklistPlease leverage this checklist to ensure your code review is thorough before approving Testing, Bugs, Errors, Logs, Documentation
System Compatibility
Quality
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Makes sense to me!
@HammadB, the code is coming, just a little slower than expected with my research. And besides, we want to make it genuinely pluggable. In the impl I am adding support for both decorator-based (for 80%+ of the cases) and a context manager-based way to set up the Authorization Context (a tuple that includes - user identity, resource (type, id, namespace info) and action (e.g. list_collections). |
@HammadB, CIP + baseline is ready to go, I just need to create the tests. |
- Added dependencies in requirements and pyproject - Moved to enumerated resource types and actions for authz_context - Added reset authz_context
- Added observability to baseline authorization provider - Fixed a few bugs with authz decorators
I need to move authz tests as a standalone. It might be another OOM (from the failed test: |
- Cleaned up some unused code
…le auth headers, this is backward compatible
Need to add support for DB and tenancy. |
# Conflicts: # chromadb/server/fastapi/__init__.py # chromadb/telemetry/opentelemetry/__init__.py
Removed the max_examples for authz tests Fixed a few issues with testing
@HammadB, have a look. |
…tem.OutOfMemoryException' was thrown.`
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few smallish comments, nothing major. I'd love to get this landed today.
Description of changes
Summarize the changes made by this PR.
Test plan
How are these changes tested?
pytest
for python,yarn test
for jsDocumentation Changes
TBD